Auxiliary device communication

ABSTRACT

A system may include a message server. The system may include a telemetry unit in communication with the message server. The telemetry unit may be configured to discover an identification of an auxiliary device coupled thereto. The telemetry unit may be configured to report the identification to the message server. The telemetry unit may be configured to request the message server to send messages associated with the identification to the telemetry unit. The telemetry unit may be configured to forward the messages to the auxiliary device.

REFERENCE TO RELATED APPLICATIONS

This application claims priority to U.S. Provisional Application62/434,746, filed Dec. 15, 2016, which is incorporated by reference.

BACKGROUND

Marine survey techniques may be utilized to yield knowledge ofsubterranean formations beneath a body of water in order to find andextract valuable mineral resources, such as oil. For a typical marinesurvey, a marine survey vessel tows equipment. Towable equipment mayinclude one or more sources below the surface of the water and over asubterranean formation to be surveyed for mineral deposits. Receiversmay be located on or near the seafloor or may be towable equipment onone or more streamers that can be towed by the same marine survey vesselthat tows the sources or on one or more streamers that can be towed byanother marine survey vessel.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates a block diagram of an overhead view of a portion of amarine survey system.

FIG. 2 is a block diagram of a message server.

FIG. 3 is a block diagram of a marine survey communication system.

DETAILED DESCRIPTION

The present disclosure is related generally to the field of marinesurveying. Marine surveying can include, for example, seismic orelectromagnetic surveying, among others. This disclosure may haveapplications in marine surveying, in which one or more sources are usedto generate wavefields, and receivers—either towable or oceanbottom—receive energy generated by the sources and affected by theinteraction with a subsurface formation. The receivers thereby collectsurvey data which can be useful in the discovery and extraction ofhydrocarbons from subsurface formations. In particular, the presentdisclosure is related to establishing communication between in-seaauxiliary devices associated with towable equipment and controlcomponents, such as control components aboard a marine survey vessel,without a priori knowledge of the auxiliary device and its function byelectronics components such as telemetry units of the towable equipment.

Marine surveying may include utilizing a marine survey vessel to performa portion of the marine survey. A marine survey vessel, such as awatercraft, may be used to house and tow components for marinesurveying. As used herein, the term aboard is used to refer to acomponent that is housed on the marine survey vessel and is not acomponent that is placed in the water or towed through the water. Asused herein, the term “in-sea” refers to a component that is placed inthe water and towed from the marine survey vessel. “In-sea” may alsorefer to a component that is transported by and stowed on the marinesurvey vessel. The in-sea component can be designed to be deployed on orin the water.

Marine survey vessels can tow equipment. Towable equipment can includeone or more of a source, a receiver, an auxiliary device, and astreamer. A source can be a device that releases energy into the earthin the form of waves and may be impulsive or non-impulsive.Non-impulsive sources differ from impulsive sources in that theytransmit energy for an extended period of time, as compared to impulsivesources, which transmit energy for a short period of time. For instance,non-impulsive sources transmit energy near-continuously or continuously,while impulsive sources transmit energy in a short period of time. Asused herein, “near-continuous” includes without meaningful breaks. Aswould be understood by one of ordinary skill in the art with the benefitof this disclosure, operational circumstances can cause intermittentgaps (due to equipment failure, etc.). “Near-continuous” can betransmission with intermittent or periodic gaps, whether planned orunplanned, as well as without intermittent or periodic gaps, thusincluding “continuous transmission.” An example of a non-impulsivesource is a marine vibrator. An example of an impulsive source is an airgun.

An example of a receiver is a seismic receiver such as a hydrophone orgeophone, however embodiments are not limited to these examples. Anexample of a receiver is an electromagnetic receiver. A receiver caninclude a sensor. Examples of sensors include a particle displacementsensor, a particle velocity sensor, an accelerometer, and a pressuregradient sensor. The receivers can receive in-sea information includingthe returning energy released from the source and reflected offsubsurface formations. The receivers can receive in-sea information suchas acceleration readings associated with the receiver.

An auxiliary device can be an in-sea add-on component that supports theoperation of the other marine survey equipment being utilized in amarine survey operation. An auxiliary device can be coupled to towableequipment. A plurality of auxiliary devices can be utilized in a marinesurveying operation. Each of the auxiliary devices can be coupled to andin communication with a telemetry unit on respective towable equipment.Examples of auxiliary devices include acoustic positioning devices,towable equipment steering devices, tension measurement devices, andspeed-of-sound devices. Different types of auxiliary devices can beutilized in a marine survey operation to receive, store, and generateauxiliary data. The auxiliary devices may be manufactured by a pluralityof different manufacturers, have distinct communication protocols, becontrolled by distinct applications, and utilize distinct sources ofelectric power and data transmission along a streamer separate from amain streamer telemetry cable.

A streamer is a marine cable assembly that can include the receivers andelectrical or optical connections to transmit information collected bythe receivers to the marine survey vessel. The streamers and receiverscan be arranged in a spread. The spread is the geometrical pattern ofreceivers relative to a source. The output from an actuation of a sourcemay be recorded simultaneously by the receivers during the marinesurvey. Example spread geometries include in-line offset, L-spread,split-spread, and T-spread.

An example of a length of the streamers is ten kilometers. Howeverstreamers can be longer or shorter for a given marine survey. A streamercan include streamer sections. For example, a streamer can include aplurality of seventy-five to one hundred fifty meter long streamersections. Each streamer section can include a plurality of receivers.The receivers can convert the in-sea information into signals, which canbe analog or digital signals, to be transmitted to the marine surveyvessel for recording or processing. The receivers can transmit the datautilizing a main streamer telemetry cable (e.g., fiber, copper, etc.)running through the streamer between the marine survey vessel and thereceivers.

A streamer can include a telemetry unit. The telemetry unit is an in-seadevice located on a streamer that can be coupled to an auxiliary device.A streamer (or a plurality of streamers) can include a plurality oftelemetry units, which can be coupled in a network. According to atleast one embodiment of the present disclosure, a telemetry unit canhave detailed knowledge of the auxiliary device coupled thereto. Forexample, the telemetry unit can have knowledge of a communicationprotocol of the auxiliary device and can receive a command from acontroller, interpret and translate the command to a different commandunderstandable and executable by the auxiliary device, and transmit thedifferent command to the auxiliary device. As such, telemetry units canutilize processing resources, persistent updates, and storage of datarelated to various communication protocols to facilitate control ofdifferent auxiliary devices. Further, an auxiliary device and acontroller can be configured to interface with a telemetry unit. In atleast one embodiment, the controller can be aboard a marine surveyvessel.

In at least one embodiment of the present disclosure, a telemetry unitcan be associated with a source. For example, the telemetry unit can bepart of or coupled to and in communication with a source. The telemetryunit can be coupled to an auxiliary device that is associated with thesource. The source and the auxiliary device can be configured tocommunicate with the telemetry unit. The controller can be configured tocommunicate with the telemetry unit and communicate with the source orthe auxiliary device through the telemetry unit.

The controller can send control commands to the receivers and receivestatus data and digitized in-sea information from the receivers. Thecontroller can execute a plurality of applications. Each application canbe instructions executable by a processor to control and communicatewith a receiver or an auxiliary device. The controller can facilitatecommunicating the commands from the applications to the correspondingreceivers or telemetry units associated with auxiliary devices. Asdescribed above, communications between the controller and the auxiliarydevice can be translated through a telemetry unit.

In at least one embodiment of the present disclosure, communicationbetween in-sea auxiliary devices and the controller can utilize atelemetry unit as a relay therebetween. As such, a message server canrelay messages between applications associated with the controller andan auxiliary device via the telemetry unit. The message server can relaya message without knowledge of the contents of the message. In at leastone embodiment, the message server can be aboard the marine surveyvessel.

As used herein, the singular forms “a”, “an”, and “the” include singularand plural referents unless the content clearly dictates otherwise.Furthermore, the word “may” is used throughout this application in apermissive sense (i.e., having the potential to, being able to), not ina mandatory sense (i.e., must). The term “include,” and derivationsthereof, mean “including, but not limited to.” The term “coupled” meansdirectly or indirectly connected.

The figures herein follow a numbering convention in which the firstdigit or digits correspond to the drawing figure number and theremaining digits identify an element or component in the drawing.Similar elements or components between different figures may beidentified by the use of similar digits. For example, 104 may referenceelement “04” in FIG. 1, and a similar element may be referenced as 304in FIG. 3. Multiple analogous elements within one figure may bereferenced with a reference numeral followed by a hyphen and anothernumeral or a letter. For example, 110-1 may reference element 10-1 inFIG. 1 and 110-2 may reference element 10-2, which can be analogous toelement 10-1. Such analogous elements may be generally referencedwithout the hyphen and extra numeral or letter. For example, elements110-1 and 110-2 may be generally referenced as 110. As will beappreciated, elements shown in the various embodiments herein can beadded, exchanged, and/or eliminated so as to provide a number ofadditional embodiments of the present disclosure. In addition, as willbe appreciated, the proportion and the relative scale of the elementsprovided in the figures are intended to illustrate certain embodimentsof the present invention, and should not be taken in a limiting sense.

FIG. 1 illustrates a block diagram of an overhead view of a portion of amarine survey system 100. The marine survey system 100 can include amarine survey vessel 102. Equipment can be positioned aboard the marinesurvey vessel 102. For example, the equipment can include a messageserver 104. Although not specifically illustrated, the equipment caninclude a controller and applications associated with the controller.

The marine survey system 100 can include towable equipment. As usedherein, towable equipment can be equipment that is configured to betowed from the marine survey vessel 102. For example, towable equipmentcan include connections configured to be secured to the marine surveyvessel 102 or to a line coupled to the marine survey vessel 102.However, towable equipment can be stored on the marine survey vessel 102or be completely separate from the marine survey vessel 102. The towableequipment can be the equipment utilized to perform a marine survey.Examples of the towable equipment include cabling, streamers 106-1,106-2, . . . 106-N, sources, receivers, digitizers, and auxiliarydevices 110-1, 110-2, 110-3, . . . , 110-N.

The marine survey system 100 can include telemetry units 108-1, 108-2,108-3, 108-4, 108-5, . . . , 108-N. The telemetry units 108 can belocated on the towable equipment. For example, the telemetry units 108can be located on, in-line with, or coupled to a streamer 106 or asource. The telemetry units 108 can be included in a network oftelemetry units 108. Each telemetry unit 108 can be coupled to adistinct portion of the towable equipment and be in communication withauxiliary devices 110 associated with the distinct portion of thetowable equipment.

The marine survey system 100 can include auxiliary devices 110 coupledto telemetry units 108. For example, as illustrated in FIG. 1, anauxiliary device 110-2 is coupled to a telemetry unit 108-3. The marinesurvey system 100 can include a connection 112, such as an optical orelectrical connection, between auxiliary devices 110 and telemetry units108. The connection 112 between auxiliary devices 110 and telemetryunits 108 can utilize a common communication interface, such as commoncommunication interfaces 111-1, 111-2, 111-3, 111-4, 111-5, 111-6,111-7, 111-8, 111-9, . . . , 111-N, between the two. The commoncommunication interface 111 is a standardized interface. An example ofthe common communication interface 111 is a controller area network(CAN) interface, however embodiments are not so limited. A commoncommunication interface 111 can be an interface to accept a connection112 that is the same or complimentary between the auxiliary devices 110and the telemetry units 108. The common communication interface 111 canconform to a standard defining the electrical or optical characteristicsof drivers and receivers for use in communication, such as RS-485. Theconnection 112 can be a physical communication pathway, such as asection of cable. The common communication interface 111 may include aterminal of the section of cable and a terminal of the auxiliary device110 or the telemetry unit 108 coupled thereto. An auxiliary device 110can be coupled to more than one telemetry unit 108. For example, asillustrated in FIG. 1, an auxiliary device 110-1 is coupled to a firsttelemetry unit 108-1 and a second telemetry unit 108-2. The telemetryunits 108 can include a common communication interface 111 configured tobe coupled to a plurality of auxiliary devices 110.

The marine survey system 100 can include a communication link betweenthe marine survey vessel 102 and a telemetry unit 108. In at least oneembodiment of the present disclosure, the communication link cancommunicatively connect the message server 104 with the telemetry units108. The communication link can be partially or fully within a body of astreamer 106. The message server 104 can be a computing device includinginstructions executable by a processor. For example, the message server104 can include processing resources and memory resources coupled to theprocessing resources and storing instructions executable by theprocessing resources to perform the various functions described below.In at least one embodiment of the present disclosure, the message serverincludes instructions executable by the processor to act as middleware,handling messages that are sent between telemetry units 108 or auxiliarydevices 110 and equipment or auxiliary applications. In at least oneembodiment, the message server 104 is located aboard the marine surveyvessel 102.

A telemetry unit 108 can be initialized with equipment aboard the marinesurvey vessel 102 or elsewhere. Initialization can include an electronichandshake between the telemetry unit 108 and the equipment wherebyattributes are assigned and communicated between the telemetry unit 108and the equipment. For example, initializing the telemetry unit 108 withthe equipment may include the telemetry unit 108 electronicallyidentifying itself and its position to the equipment and the equipmentassigning a position indicator to each telemetry unit 108. Examples ofposition include geographic coordinates and physical location relativeto other towable equipment such as streamers 106, sources, and telemetryunits 108. Examples of position indicators include a number, a string ofnumbers, an indication of a source that the telemetry unit is locatedon, an indication of streamer 106 that the telemetry unit 108 is locatedon, an indication of a section of streamer 106 in a multi-sectionstreamer 106 that the telemetry unit 108 is located on, an indication ofa portion of a streamer 106 that the telemetry unit 108 is located on,and an indication of a location of the telemetry unit 108 within anetwork of telemetry units.

An auxiliary device 110 can include and be associated with anidentification. An auxiliary device 110 can be assigned theidentification during its manufacture. For example, an identificationsuch as a make, model, or serial number of the auxiliary device 110 canbe assigned to the auxiliary device 110 during its manufacture. Theidentification can be represented as a string of bits. Theidentification can be unique or non-unique. As an example of anon-unique identification, an auxiliary device 110 such as an acousticpositioning unit can have an identification such as “APU” associatedwith it. In another example, an auxiliary device 110 such as a tensionmonitoring unit can have an identification such as “TMU” associated withit. The identification can be associated with the auxiliary device 110in order to identify a type of the auxiliary device 110. A type of anauxiliary device 110 may include a category of the auxiliary device 110as defined by a function associated with the auxiliary device 110.Examples of device types include acoustic positioning device type,towable equipment steering device type, tension measurement device type,and speed-of-sound device type. The identification may not be assignedor formatted by a manufacturer in order to communicate any associationof the auxiliary device 110 with another component of the marine surveysystem 100. In at least one embodiment of the present disclosure, eachauxiliary device 110 can have a unique identification, such as a serialnumber.

The auxiliary device 110 can be configured to report its associatedidentification to a telemetry unit 108. For example, the auxiliarydevice 110 can report its associated identification to the particulartelemetry unit or telemetry units that it is coupled to. In at least oneembodiment of the present disclosure, the auxiliary device 110 canreport its associated identification to a coupled telemetry unit 108responsive to power being applied to the auxiliary device 110. Powerbeing applied to the auxiliary device 110 can include initiating thesupply of electricity to power the functions of the auxiliary device110, exiting a standby mode, or entering a full functionality powered upmode. Reporting the identification associated with the auxiliary device110 can include reporting a string of bits making up the identificationto the telemetry unit 108 that the auxiliary device 110 is coupled to.

The telemetry unit 108 can be configured to discover an identificationassociated with an auxiliary device 110 coupled thereto. For example,the telemetry unit 108 can be configured to detect the identification ofthe auxiliary device 110 or receive the identification of the auxiliarydevice 110. The auxiliary device 110 can report the identification tothe telemetry unit 108 responsive to power being applied to theauxiliary device 110.

Once the telemetry unit 108 has discovered the identification associatedwith the auxiliary device 110, the telemetry unit 108 can report theidentification associated with the auxiliary device 110 to theequipment. In at least one embodiment of the present disclosure, thetelemetry unit 108 can generate an auxiliary device found report upondiscovering the identification associated with the auxiliary device 110.The auxiliary device found report can include the identificationassociated with the auxiliary device 110 and the position indicatorassigned to the reporting telemetry unit 108. The telemetry unit 108 cancommunicate the auxiliary device found report to the message server 104.

The message server 104 can be responsible for handling messages for theauxiliary devices 110. A message can be a command being sent fromequipment, such as equipment aboard the marine survey vessel 102, to aparticular auxiliary device 110. For example, a message can be a commandfrom an auxiliary device application running on the message server 104to a particular auxiliary device 110. A message identification can be anidentification associated with the auxiliary device 110 that the messageis being addressed to. A message identification can be an identificationassociated with a destination auxiliary device 110. The telemetry unit108 may have no knowledge and information regarding the function andmessaging format of a coupled auxiliary device 110. The telemetry unit108 can request that the message server 104 forward, to the telemetryunit 108, messages for the auxiliary devices 110 that are coupled to thetelemetry unit 108. Alternatively, the telemetry unit 108 can requestthat the message server 104 forward, through the telemetry unit 108,messages for the auxiliary devices 110 that are coupled to the telemetryunit 108 to the auxiliary devices 110. In at least one embodiment of thepresent disclosure, the telemetry unit 108 can include the request aspart of the auxiliary device found report described above.

The message server 104 can, responsive to receiving the forwardingrequest from the telemetry unit 108, forward a message to the telemetryunit 108 coupled to the auxiliary device 110 identified in the messageidentification. The message server 104 can identify the messageidentification and compare it to a list of identifications associatedwith various auxiliary devices 110. When the message server 104 finds amatch between the message identification and a particular identificationassociated with a particular auxiliary device 110, the message server104 can forward the message to a particular telemetry unit 108 that iscoupled to the particular auxiliary device 110. As described above, aparticular telemetry unit 108 coupled to a particular auxiliary device110 can be identified based on the particular telemetry unit 108 havinggenerated the auxiliary device found report for the particular auxiliarydevice 110.

The message server 104 can forward a message to an appropriate telemetryunit 108 via the communication link 105-1, 105-2, . . . 105-N. Thetelemetry unit 108 can, upon receipt of the message, forward the messageto the coupled auxiliary device 110. The telemetry unit 108 can forwardthe message to the auxiliary device 110 without translation, conversion,or any other processing of the contents of the message. In other words,the telemetry unit 108 can act as a relay for the message on its way tothe destination auxiliary device 110 and the telemetry unit 108 may notbe configured with a protocol of the message that it is relaying.

The auxiliary device 110 can receive the message and act on it. Forexample, a message can be a command to the auxiliary device 110 todescend to a particular depth. After the telemetry unit 108 forwards themessage to the auxiliary device 110, the auxiliary device 110 candescend to the commanded depth. The auxiliary device 110 can generate aresponse message. The response message can be a response to the commandor another type of communication between the auxiliary device 110 andthe equipment. For example, the auxiliary device 110 can generate aresponse message including a confirmation that the auxiliary device 110has achieved the commanded depth. The auxiliary device 110 can send theresponse message to the telemetry unit 108. The telemetry unit 108 canforward the message to the message server 104.

The telemetry unit 108 may have no information regarding the contents ofthe reply message and may not perform any processing of the contents ofthe reply message. The message server 104 can forward the reply message,without processing the contents thereof, to the appropriate equipment.The message server 104 can identify the appropriate equipment to receivea reply message based on an auxiliary device type registered by theequipment with the message server 104 matching a portion of anidentification associated with the auxiliary device 110 that generatedthe reply message. The message server 104 can identify theidentification associated with the auxiliary device 110 that generatedthe reply message from analysis of the reply message and metadataassociated with the reply message. Advantages of this approach caninclude removing the computational burden of processing, interpreting,routing, and translating messages and reply messages from the telemetryunit 108. A reduction of the computational burden can reduce the costassociated with a telemetry unit 108, can reduce the size of thetelemetry unit 108 so that it has less of an impact on the dynamics ofthe streamers 106, and can free the telemetry unit 108 to control moreauxiliary devices 110 with the same resources. Previous approachesinvolved persistent updating and software additions to telemetry units108 in order to process, interpret, route, and translate messages for aplurality of auxiliary devices 110 often made by different manufacturersand controlled by distinct applications through distinct communicationinterfaces.

As described above and as illustrated in FIG. 1, the marine surveysystem 100 can include a plurality of network coupled auxiliary devices110. As such, a telemetry unit 108 can be configured to discover arespective identification of each of the plurality of auxiliary devices110 coupled thereto. The telemetry unit 108 can be configured to reportthe respective identification to the message server 104. The telemetryunit 108 can be configured to request the message server 104 to sendmessages associated with the respective identification to the telemetryunit 108. A message can be associated with a particular identificationof an auxiliary device 110 when a message identification associated withthe message matches the particular identification of the auxiliarydevice 110. The telemetry unit 108 can be configured to forward messagesto one of the auxiliary devices 110 having a matching messageidentification.

As described above and as illustrated in FIG. 1, the marine surveysystem 100 can include a plurality of network coupled telemetry units108. As such, the marine survey system 100 can include not only a firsttelemetry unit 108-5, but can include a second telemetry unit 108-Ncoupled to the message server 104. The first telemetry unit 108-5 andsecond telemetry unit 108-N can be coupled to the message server 104 bya common physical communication link 105-N. A common physicalcommunication link 105-N can be cabling and interfaces that are sharedby both the first telemetry unit 108-5 and second telemetry unit 108-Nas a connection to the message server 104. A common physicalcommunication link 105-N can include serial or parallel cabling andinterfaces between the first telemetry unit 108-5 and the message server104 and the second telemetry unit 108-N and the message server 104 thatconsist of substantially the same physical components. The firsttelemetry unit 108-5 can be configured to discover an identification ofa first auxiliary device 110-3. The first telemetry unit 108-5 can beconfigured to report the identification of the first auxiliary device110-3 to the message server 104. The first telemetry unit 108-5 can beconfigured to request the message server 104 to send messages associatedwith the identification of the first auxiliary device 110-3 to the firsttelemetry unit 108-5. The first telemetry unit 108-5 can be configuredto forward the messages associated with the identification of the firstauxiliary device 110-3 to the first auxiliary device 110-3. The secondtelemetry unit 108-N can be configured to discover an identification ofa second auxiliary device 110-N. The second telemetry unit 108-N can beconfigured to report the identification of the second auxiliary device110-N to the message server 104. The second telemetry unit 108-N can beconfigured to request the message server 104 to send messages associatedwith the identification of the second auxiliary device 110-N to thesecond telemetry unit 108-N. The second telemetry unit 108-N can beconfigured to forward the messages associated with the identification ofthe second auxiliary device 110-N to the second auxiliary device 110-N.

FIG. 2 is a block diagram of a message server 204. The message server204 can include at least one computing device that is capable ofcommunicating with at least one remote device. In the example of FIG. 2,the message server 204 includes a processor 222 and a computer-readablemedium 224. Although the following descriptions refer to a singleprocessor and a single computer-readable medium, the descriptions canalso apply to a system with multiple processors and computer-readablemediums. In such examples, the instructions can be stored acrossmultiple computer-readable mediums and the instructions can be executedacross multiple processors.

The processor 222 can be a central processing unit (CPUs), amicroprocessor, or other hardware devices suitable for retrieval andexecution of instructions stored in the computer-readable medium 224. Inthe particular example shown in FIG. 2, the processor 222 can retrieveand execute instructions 226, 228, 230, 232, 234, and 236. As analternative, the processor 222 can comprise an electronic component,such as an application specific integrated circuit, for performing thefunctionality represented by the instructions stored in thecomputer-readable medium 224.

The computer-readable medium 224 may be any electronic, magnetic,optical, or other physical storage device that stores executableinstructions. Thus, the computer-readable medium 224 may be, forexample, Random Access Memory (RAM), an Electrically-ErasableProgrammable Read-Only Memory (EEPROM), a storage drive, an opticaldisc, and the like. The computer-readable medium 224 can be disposedwithin the message server 204, as shown in FIG. 2. In this situation,the executable instructions can be “installed” on the message server204. Additionally the computer-readable medium 224 can be a portable,external or remote storage medium, for example, that allows the messageserver 204 to download the instructions from theportable/external/remote storage medium. In this situation, theexecutable instructions can be part of an “installation package”. Asdescribed herein, the computer-readable medium 224 can be encoded withexecutable instructions 226, 228, 230, 232, 234, and 236.

The instructions 226, when executed by a processor 222, can cause themessage server 204 to register an identification of a first auxiliarydevice. The first auxiliary device can be an auxiliary device coupled totowable equipment. The first auxiliary device can be in communicationwith and coupled to a first telemetry unit. The identification of thefirst auxiliary device can be received from the first telemetry unit.The first telemetry unit can be coupled to or incorporated in a streameror a source. The position of the first telemetry unit within a spread ofstreamers or sources including a plurality of telemetry units can beregistered with the message server.

The instructions 228, when executed by the processor 222, can cause themessage server 204 to register an identification of a second auxiliarydevice. The second auxiliary device can be located on the towableequipment. The second auxiliary device can be in communication with andcoupled to a second telemetry unit. The identification of the secondauxiliary device can be received from the second telemetry unit. Thesecond telemetry unit can be coupled to or incorporated in a streamer orsource. The streamer or source can be the same or different than thestreamer or source that the first telemetry unit is coupled to orincorporated with. The position of the second telemetry unit within aspread of streamers or sources including a plurality of telemetry unitscan be registered with the message server.

The instructions 230, when executed by the processor 222, can cause themessage server 204 to register an identification of a first auxiliarydevice type from an auxiliary device application. Auxiliary deviceapplications can be executed by a controller, such as a controlleraboard the marine survey vessel. For example, the auxiliary deviceapplications can run on a message server 204. Auxiliary deviceapplications can include instructions executable by a processor to sendcommands to and receive responses from a particular auxiliary device ora particular type of auxiliary device. When an auxiliary deviceapplication begins to run it can register the auxiliary device and/ortype of auxiliary device that it is configured to command with themessage server. The auxiliary device application can register theauxiliary device type utilizing an identification associated with aparticular auxiliary device type or a particular auxiliary device thatthe application is configured to generate commands to. For example, anauxiliary device application can be provided by instructions executed bya processor to cause a particular type of auxiliary device to perform anassociated function.

The instructions 232, when executed by a processor 222, can cause themessage server 204 to register an identification of a second auxiliarydevice type received from a second auxiliary device application. Theidentification of the second auxiliary device type can be anidentification of a different type of auxiliary device from theidentification of the first auxiliary device type. As such, the messageserver can include a registry of distinct auxiliary device typesassociated with distinct auxiliary device applications.

The instructions 234, when executed by a processor 222, can cause themessage server 204 to establish a first messaging link between the firstauxiliary device application and the first auxiliary device to becontrolled. Establishing the first messaging link can be based on theidentification of the first auxiliary device matching the firstauxiliary device type. A message server can forward a message from afirst auxiliary device application to a first auxiliary device when theidentification of the first auxiliary device matches a portion of thefirst auxiliary device type registered from the first auxiliary deviceapplication sending the message. Forwarding the message from the firstauxiliary device application to the first auxiliary device can includeforwarding the message to a first telemetry unit in communication withthe first auxiliary device. The first telemetry unit can be identifiedas the first telemetry unit from which the identification of the firstauxiliary device was received by the message server. Establishing amessaging link can also include forwarding a response message from thefirst auxiliary device to the first auxiliary device application basedon the identification of the first auxiliary device matching the firstauxiliary device type registered by the first auxiliary deviceapplication. Again, the first telemetry unit can forward the responsemessage from the first auxiliary device to the message server forforwarding to the first auxiliary device application.

The instructions 236, when executed by a processor 222, can cause themessage server 204 to establish a second messaging link between thesecond auxiliary device application and the second auxiliary device tobe controlled. Establishing the second messaging link can be based onthe identification of the second auxiliary device matching the secondauxiliary device type. A message server can forward a message from asecond auxiliary device application to a second auxiliary device whenthe identification of the second auxiliary device matches a portion ofthe second auxiliary device type registered from the second auxiliarydevice application sending the message. Forwarding the message from thesecond auxiliary device application to the second auxiliary device caninclude forwarding the message to a second telemetry unit incommunication with the second auxiliary device. The second telemetryunit can be identified as the second telemetry unit from which theidentification of the second auxiliary device was received by themessage server. Establishing a second messaging link can also includeforwarding a response message from the second auxiliary device to thesecond auxiliary device application based on the identification of thesecond auxiliary device matching the second auxiliary device typeregistered by the second auxiliary device application. Again, the secondtelemetry unit can forward the response message from the secondauxiliary device to the message server for forwarding to the secondauxiliary device application.

The message server 204, can include fewer or more instructions than areillustrated in FIG. 2. For example, the message server 204, or anotherserver, can include additional instructions that, when executed by aprocessor 222, can cause the message server 204 to generate a map. Themap can include the physical positions and locations of the firsttelemetry unit, the first auxiliary device, the second telemetry unit,and the second auxiliary device within a spread of towable equipment.The physical positions and locations can be determined based on thefirst position indicator of the first telemetry unit and the secondposition indicator of the second telemetry unit registered with themessage server.

FIG. 3 illustrates a block diagram of a marine survey communicationsystem 360 for marine surveying. The marine survey communication system360 can include auxiliary devices 310-1 . . . 310-N, telemetry units308-1, 308-2, . . . , 308-N, a message server 304, an association table362, and auxiliary device applications 364-1 . . . 364-N. The messageserver 304 can be a computing device and/or instructions executable by aprocessor to facilitate communication between auxiliary deviceapplications 364 and auxiliary devices 310. For example, the messageserver can include processing resources, such the processor 222described with regard to message server 204, and memory resources, suchthe computer readable medium 224 described with regard to message server204, coupled to the processing resources and storing instructionsexecutable by the processing resources to perform the various functionsdescribed below. The message server 304 can utilize messaging protocolssuch as message queueing telemetry transport (MQTT) protocol, an advancemessage queueing protocol (AMQP), a ZeroMQ message transport protocol(ZMTP), and a custom protocol.

The message server 304 can include instructions executable by aprocessing resource to receive an identification of a first auxiliarydevice 310-1. The first auxiliary device 310-1 can be located on towableequipment. For example, the first auxiliary device 310-1 can beassociated with a streamer. The first auxiliary device 310-1 can becoupled to a streamer, coupled to a receiver on a streamer, or coupledto a source. The identification of the first auxiliary device 310-1 canbe reported from a first telemetry unit 308-1 in communication with thefirst auxiliary device 310-1. For example, the identification of thefirst auxiliary device 310-1 can be included in a report from the firsttelemetry unit 308-1 to the message server 304. The report can be areport of the discovery of the first auxiliary device 310-1 by the firsttelemetry unit 308-1. The report can also include a position indicatorassociated with the first telemetry unit 308-1. The first telemetry unit308-1 can receive the identification of the first auxiliary device 310-1responsive to the coupled first auxiliary device 310-1 receiving power.The first telemetry unit 308-1 can generate the report responsive toreceiving the identification from the first auxiliary device 310-1.

The message server 304 can include instructions executable by aprocessing resource to receive an identification of a second auxiliarydevice 310-N. The second auxiliary device 310-N can also be located ontowable equipment. The identification of the second auxiliary device310-N can be reported from a second telemetry unit 308-N incommunication with the second auxiliary device 310-N. For example, theidentification of the second auxiliary device 310-N can be included in areport from the second telemetry unit 308-N to the message server 304.The report can be a report of the discovery of the second auxiliarydevice 310-N by the second telemetry unit 308-N. The report can alsoinclude a position indicator associated with the second telemetry unit308-N. The second telemetry unit 308-N can receive the identification ofthe second auxiliary device 310-N responsive to the coupled secondauxiliary device 310-N receiving power. The second telemetry unit 308-Ncan generate the report responsive to receiving the identification fromthe second auxiliary device 310-N.

The message server 304 can include instructions executable by aprocessing resource to receive an identification of a first auxiliarydevice type from a first auxiliary device application 364-1. Responsiveto operation of an auxiliary device application 364 being initiated, theauxiliary device application 364 can transmit an identification of afirst auxiliary device type. The identification of the first auxiliarydevice type can be a designation of a type of or a specific one of aplurality of auxiliary devices 310 that are controllable by the firstauxiliary device application 364-1. The identification of the firstauxiliary device type can be a designator that is substantiallyidentical or partially identical to the identification of the firstauxiliary device 310-1 reported to the message server 304 by the firsttelemetry unit 308-1.

The message server 304 can include instructions executable by aprocessing resource to receive an identification of a second auxiliarydevice type from a second auxiliary device application 364-N. Responsiveto operation of a second auxiliary device application 364-N beinginitiated, the second auxiliary device application 364-N can transmit anidentification of a second auxiliary device type. The identification ofthe second auxiliary device type can include a designation of a type ofor a specific one of a plurality of auxiliary devices 310 that arecontrollable by the second auxiliary device application 364-N. Theidentification of the second auxiliary device type can be a designatorthat is substantially identical or partially identical to theidentification of the second auxiliary device 310-N reported to themessage server 304 by the second telemetry unit 308-N.

The message server 304 can include instructions executable by aprocessing resource to exchange messages between the first auxiliarydevice application 364-1 and the first telemetry unit 308-1 responsiveto a correlation between the identification of the first auxiliarydevice 310-1 and the identification of the first auxiliary device typereceived from the first auxiliary application 364-1. For example, themessage server 304 can include instructions executable by a processingresource to forward a message from a first auxiliary application 364-1to a first telemetry unit 308-1 based on the identification of the firstauxiliary device 310-1 reported by the first telemetry unit 308-1matching a portion of the identification of the first auxiliary devicetype reported to the message server 304 by the first auxiliary deviceapplication 364-1. Further, the message server 304 can includeinstructions executable by a processing resource to forward a responsemessage, received from a first auxiliary device 310-1 and forwardedthrough a first telemetry device 308-1, to the first auxiliaryapplication 364-1 based on the identification of the first auxiliarydevice 310-1 reported by the first telemetry unit 308-1 matching aportion of the identification of the first auxiliary device typereported to the message server 304 by the first auxiliary deviceapplication 364-1.

The message server 304 can include instructions executable by aprocessing resource to exchange messages between the second auxiliarydevice application 364-N and the second telemetry unit 308-N responsiveto a correlation between the identification of the second auxiliarydevice 310-N and the identification of the second auxiliary device typereceived from the second auxiliary application 364-N. For example, themessage server 304 can include instructions executable by a processingresource to forward a message from a second auxiliary application 364-Nto a second telemetry unit 308-N based on the identification of thesecond auxiliary device 310-N reported by the second telemetry unit308-N matching a portion of the identification of the second auxiliarydevice type reported to the message server 304 by the second auxiliarydevice application 364-N. Further, the message server 304 can includeinstructions executable by a processing resource to forward a responsemessage, received from a second auxiliary device 310-N and forwardedthrough a second telemetry device 308-N, to the second auxiliaryapplication 364-N based on the identification of the second auxiliarydevice 310-N reported by the second telemetry unit 308-N matching aportion of the identification of the second auxiliary device typereported to the message server 304 by the second auxiliary deviceapplication 364-N.

The message server 304 can include instructions executable by aprocessing resource to construct a data structure such as an associationtable 362 to associate the identification of the first auxiliary device310-1 and the first telemetry unit 308-1 with the identification of thefirst auxiliary device type reported by first auxiliary application364-1. Further, the message server 304 can include instructionsexecutable by a processing resource to construct an association table362 to associate the identification of the second auxiliary device 310-Nand the second telemetry unit 308-N with the identification of thesecond auxiliary device type reported by second auxiliary application364-N. As such, the message server 304 can generate an association table362 that serves as an end-to-end messaging exchange map, mapping anauxiliary device with an associated telemetry unit 308 and an auxiliaryapplication 364 with an associated auxiliary device 310 such that aroute for forwarding a message back and forth from an auxiliary deviceapplication 364 to a target auxiliary device 310 through an associatedtelemetry unit 308 is stored in the association table 362.

The message server 304 can include instructions executable by aprocessing resource to utilize the association table 362 to accomplishthe message exchanges described above, For example, the message server304 can include instructions executable by a processing resource toutilize the association table 362 to identify a telemetry unity 308 thatreported an identification of an auxiliary device 310 that matches anauxiliary device type received from an auxiliary application 364 thatoriginated a message being exchanged and vice versa.

Although specific embodiments have been described above, theseembodiments are not intended to limit the scope of the presentdisclosure, even where only a single embodiment is described withrespect to a particular feature. Examples of features provided in thedisclosure are intended to be illustrative rather than restrictiveunless stated otherwise. The above description is intended to cover suchalternatives, modifications, and equivalents as would be apparent to aperson skilled in the art having the benefit of this disclosure.

The scope of the present disclosure includes any feature or combinationof features disclosed herein (either explicitly or implicitly), or anygeneralization thereof, whether or not it mitigates any or all of theproblems addressed herein. Various advantages of the present disclosurehave been described herein, but embodiments may provide some, all, ornone of such advantages, or may provide other advantages.

In the foregoing Detailed Description, some features are groupedtogether in a single embodiment for the purpose of streamlining thedisclosure. This method of disclosure is not to be interpreted asreflecting an intention that the disclosed embodiments of the presentdisclosure have to use more features than are expressly recited in eachclaim. Rather, as the following claims reflect, inventive subject matterlies in less than all features of a single disclosed embodiment. Thus,the following claims are hereby incorporated into the DetailedDescription, with each claim standing on its own as a separateembodiment.

What is claimed:
 1. A system comprising: a message server including aprocessor and a memory resource; and a first and a second telemetryunit, each comprising hardware on towable equipment, in communicationwith the message server; wherein each telemetry unit is configured to:discover a respective identification of a respective auxiliary device,comprising hardware, on towable equipment coupled thereto; report therespective identification to the message server to be registered withthe message server; request the message server to forward, from arespective auxiliary device application having registered with themessage server a respective identification of a respective auxiliarydevice type, to receive commands from the respective auxiliary deviceapplication, matching the registered identification of the respectiveauxiliary device, commands executable by the respective auxiliarydevice, including a message identification correlated with therespective identification of the respective auxiliary device to thetelemetry unit; and forward the commands received from the messageserver to the respective auxiliary device for execution thereby; whereinthe message server is configured to generate a map of the firsttelemetry unit, the second telemetry unit, and the respective auxiliarydevices in the towable equipment based on a first position indicatorthat describes a position of the first telemetry unit and a secondposition indicator that describes a position of the second telemetryunit; and wherein the first and the second position indicators areregistered with the message server.
 2. The system of claim 1, whereineach telemetry unit includes a common communication interface configuredto be coupled to the respective auxiliary device.
 3. The system of claim1, wherein the first and the second telemetry units are coupled to themessage server by a common physical communication link.
 4. The system ofclaim 1, wherein the respective identification of the respectiveauxiliary device is assigned to the respective auxiliary device duringmanufacture of the respective auxiliary device.
 5. The system of claim1, wherein the respective identification of the respective auxiliarydevice includes a description of the respective type of the respectiveauxiliary device.
 6. The system of claim 1, wherein each telemetry unitis configured to discover the respective auxiliary device responsive topower being applied to the respective auxiliary device.
 7. The system ofclaim 1, wherein each telemetry unit, upon initialization thereof, isconfigured to report the position of the telemetry unit to the messageserver.
 8. The system of claim 1, wherein the respective auxiliarydevice application is running on the message server.
 9. The system ofclaim 1, wherein each telemetry unit is configured to forward thecommands to the respective auxiliary device based on the respectiveidentification without processing contents of the commands.
 10. Thesystem of claim 9, wherein each telemetry unit is configured to forwardresponse messages from the respective auxiliary device to the messageserver without processing contents of the response messages.
 11. Thesystem of claim 9, wherein each telemetry unit is not configured with aprotocol of the commands.
 12. The system of claim 9, wherein therespective auxiliary device comprises at least one of an acousticpositioning device, towable equipment steering device, a tensionmeasurement device, and a speed-of-sound device.
 13. The system of claim1, wherein the towable equipment is coupled to a marine survey vessel;and wherein the message server is aboard the marine survey vessel.
 14. Anon-transitory computer-readable medium containing instructionsexecutable by a processor to cause the processor to: register, at amessage server comprising hardware, an identification of a firstauxiliary device, comprising hardware, on towable equipment discoveredby and received from a first telemetry unit, comprising hardware, incommunication with the first auxiliary device; register, at the messageserver, an identification of a second auxiliary device, comprisinghardware, on the towable equipment discovered by and received from asecond telemetry unit, comprising hardware, in communication with thesecond auxiliary device; register, at the message server, anidentification, from a first auxiliary device application, of a firstauxiliary device type to receive commands, executable by the firstauxiliary device, from the first auxiliary device application; register,at the message server, an identification, from the second auxiliarydevice application, of a second auxiliary device type to receivecommands, executable by the second auxiliary device, from the secondauxiliary device application; establish a first messaging link betweenthe first auxiliary device application and the first auxiliary devicevia the first telemetry unit based on the identification of the firstauxiliary device matching the first auxiliary device type to receive thecommands from the first auxiliary device; and establish a secondmessaging link between the second auxiliary device application and thesecond auxiliary device via the second telemetry unit based on theidentification of the second auxiliary device matching the secondauxiliary device type to receive the commands from the first auxiliarydevice.
 15. The medium of claim 14, wherein the instructions toestablish the first messaging link comprise instructions to forward amessage with a message identification that matches the identification ofthe first auxiliary device to the first telemetry unit.
 16. The mediumof claim 15, wherein the instructions to establish the first messaginglink comprise instructions to forward a response message from the firstauxiliary device to the first auxiliary device application based on theidentification of the first auxiliary device matching the firstauxiliary device type registered by the first auxiliary deviceapplication.
 17. The medium of claim 14, further comprising instructionsto register, with the message server, a first position indicatordescribing a position of the first telemetry unit in a spread of towableequipment and a second position indicator describing a position of thesecond telemetry unit in the spread of towable equipment.
 18. The mediumof claim 17, further comprising instructions to generate a map of thefirst telemetry unit, the first auxiliary device, the second telemetryunit, and the second auxiliary device in the spread of towable equipmentbased on the first position indicator and the second position indicator.19. A message server, comprising: processing resources; and memoryresources coupled to the processing resources and storing instructionsexecutable by the processing resources to: receive an identification ofa first auxiliary device, comprising hardware on towable equipment,discovered by and reported from a first telemetry unit, comprisinghardware, in communication with the first auxiliary device; receive anidentification of a second auxiliary device, comprising hardware on thetowable equipment, discovered by and reported from a second telemetryunit, comprising hardware, in communication with the second auxiliarydevice; receive, from a first auxiliary device application, anidentification of a first auxiliary device type to receive commands,executable by the first auxiliary device, from the first auxiliarydevice application; receive, from a second auxiliary device application,an identification of a second auxiliary device type to receive commands,executable by the second auxiliary device, from the second auxiliarydevice application; exchange commands and responses between the firstauxiliary device application and the first telemetry unit responsive toa correlation between the identification of the first auxiliary deviceand the identification of the first auxiliary device type to receive thecommands from the first auxiliary device application; and exchangecommands and responses between the second auxiliary device applicationand the second telemetry unit responsive to a correlation between theidentification of the second auxiliary device and the identification ofthe second auxiliary device type to receive the commands from the secondauxiliary device application.
 20. The message server of claim 19,further comprising instructions to construct an association table toassociate the identification of the first auxiliary device and the firsttelemetry unit with the identification of the first auxiliary devicetype and to associate the identification of the second auxiliary deviceand the second telemetry unit with the identification of the secondauxiliary device type.
 21. The message server of claim 20, furthercomprising instructions to utilize the association table to identify atelemetry unit in communication with an auxiliary device having anidentification that matches a message identification.
 22. The messageserver of claim 19, further comprising instructions to receive atelemetry unit position indicator associated with the first telemetryunit as part of a report, from the first telemetry unit, of a discoveryof the first auxiliary device.